The present invention is directed to an Internet browser that includes an enhanced cache for user-controlled document retention. More particularly, the present invention is directed to an Internet browser that includes an option to allow a user to specify the duration that documents should reside in the cache.
Accessing the Internet through a personal computer is rapidly increasing in popularity. One popular section of the Internet, referred to as the World Wide Web (the "Web"), includes multimedia home pages composed of text, graphics, and multimedia content such as sound and video.
The Web operates on a client/server model. The personal computer user runs a Web client, or browser, on their computer. The Web browser contacts a Web server and requests data information, referred to as documents. A document on the Web can include both Hypertext Markup Language ("HTML") files and embedded data that may be required by the HTML files. Examples of embedded data includes images, video files and audio files. The Web server locates and then sends the documents to the Web browser, which displays the documents on the computer by interpreting the HTML that is used to build home pages on the Web.
Many browsers exist for accessing the Web. Examples of browsers include the Netscape Navigator from Netscape Communication Corp. and the Internet Explorer from Microsoft Corp. The typical browsers include cache functions. A cache is a temporary storage area for network data (the actual data is stored on the network) that improves data throughput. A cache can be any combination of random access memory ("RAM") and nonvolatile storage, e.g., disk memory, flash memory, tape, etc. A typical cache includes expiration rules, which cause data to be removed when the cache storage becomes too large. A typical cache also includes consistency rules, which determine when the cache checks to see if the temporary copy of the data is up to date with the actual data on the network.
Referring to FIG. 1, a typical browser that includes a cache function is illustrated. Browser 8 is typically implemented in software and is executed on a general purpose computer (not shown). The general purpose computer includes a processor for executing the browser 8 software, and memory for storing the browser 8 software.
Browser 8 shown in FIG. 1 includes a browser interface 10, a resolver 12 and a cache control 16. Browser 8 is coupled to the Internet 14 through communication equipment (not shown) associated with the computer in a known manner. Browser 8 is also coupled to a disk drive 18 which is part of the computer. Cache control 16, resolver 12 and disk drive 18 together form a cache for browser 8. The cache uses disk drive 18 as storage, but it could also use any other combination of RAM and nonvolatile storage that is available to the general purpose computer.
A computer user 20 operates browser 8. Browser interface 10 is the graphical interface through which user 20 interacts with browser 8. User 20 requests and receives documents from Internet 14 through browser interface 10.
Resolver 12 intercepts all document requests from browser interface 10 and determines if the requested document is stored in disk 18. It does this by first requesting the document from cache control 16. Cache control 16 retrieves the document from disk 18 if the requested document is stored in disk 18, and sends the document to resolver 12 which in turn sends the document to browser interface 10. If the document is not stored in disk 18, cache control 16 informs resolver 12 of this. Resolver 12 then requests the document from Internet 14. When the document is received from Internet 14, it is sent to browser interface 10. A copy of the document is also sent to cache control 16 where it is stored in disk 18.
A typical cache in a browser has a limit to how much data cache control 16 can store in disk 18. For example, in one known browser, the amount of storage in disk 18 is limited to a user-definable number of megabytes of disk space. When the limit is reached, cache control 16 automatically deletes the oldest data in order to store new documents. Because a typical cache indiscriminately deletes data based on the duration of time that it has been stored, the embedded file part of a document can be deleted while the HTML file part of the document remains stored in the cache, and vice versa.
For various reasons, a user might want to always keep specific documents stored in the cache. For example, Web pages might become unavailable over the Internet, or might be unexpectedly deleted, or the user's connection to the Internet may be disrupted. In addition, a Web page server might be frequently overloaded so that a long delay is required when retrieving the Web page. If these Web pages are always stored in the cache, they are always available to user 20 regardless of their availability on the Internet, and are available without unnecessary delay. However, with existing browsers such as browser 8, this option is not available to user 20 because Web pages may be automatically deleted when the limit of storage available to cache control 16 in disk 18 is reached.
Based on the foregoing, there is a need for an Internet browser that includes an option to allow a user to specify how long documents should reside in the browser's cache.